1. 실행환경 세팅
운영체제별 필요 도구
| 운영체제 | 필수 도구 | 선택 도구 |
|---|---|---|
| Windows | Docker Desktop, WSL2, Ubuntu | Windows Terminal |
| macOS | Docker Desktop | Homebrew, iTerm2 |
| Linux | Docker Engine | Docker Compose |
용어 정리
- Docker Desktop: Windows/macOS용 Docker GUI 애플리케이션. Docker Engine + 관리 도구 + GUI를 포함한 올인원 패키지
- Docker Engine: Docker의 핵심 런타임. 컨테이너를 실제로 생성하고 실행하는 서버 데몬
- Docker Compose: 여러 컨테이너를 정의하고 동시에 실행하는 도구. YAML 파일로 멀티 컨테이너 환경 구성
Windows 환경 세팅
1단계: WSL2 설치
WSL2란?
- Windows Subsystem for Linux 2
- Windows에서 Linux 환경을 직접 실행할 수 있는 기술
- Docker Desktop 실행에 필수
1-1. WSL2 활성화
PowerShell (관리자 권한):
# WSL 기능 활성화
wsl --install
출력 예시:
설치 중: 가상 머신 플랫폼
설치 중: Linux용 Windows 하위 시스템
다운로드 중: WSL 커널
다운로드 중: Ubuntu
설치가 완료되었습니다. 변경 내용을 적용하려면 시스템을 다시 시작하세요.
중요: 시스템 재부팅 필요
1-2. 재부팅 후 WSL2 버전 확인
PowerShell:
# WSL 버전 확인
wsl --version
출력 예시:
WSL 버전: 2.0.14.0
커널 버전: 5.15.133.1-1
WSLg 버전: 1.0.59
2단계: Ubuntu 설치
2-1. 사용 가능한 Linux 배포판 확인
PowerShell:
# 온라인 배포판 목록 확인
wsl --list --online
출력 예시:
다음은 설치할 수 있는 유효한 배포 목록입니다.
'wsl.exe --install <Distro>'를 사용하여 설치합니다.
NAME FRIENDLY NAME
Ubuntu Ubuntu
Debian Debian GNU/Linux
kali-linux Kali Linux Rolling
Ubuntu-20.04 Ubuntu 20.04 LTS
Ubuntu-22.04 Ubuntu 22.04 LTS
2-2. Ubuntu 설치
PowerShell:
# Ubuntu 22.04 LTS 설치 (권장)
wsl --install -d Ubuntu-22.04
설치 과정:
다운로드 중: Ubuntu 22.04 LTS
설치 중: Ubuntu 22.04 LTS
Ubuntu 22.04 LTS이(가) 설치되었습니다.
2-3. Ubuntu 초기 설정
자동으로 Ubuntu 터미널이 실행되면:
Enter new UNIX username: <사용자명 입력>
New password: <비밀번호 입력>
Retype new password: <비밀번호 재입력>
설정 완료 예시:
Installation successful!
To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.
username@DESKTOP-XXXXX:~$
2-4. 설치된 배포판 확인
PowerShell:
# 설치된 WSL 배포판 목록
wsl --list --verbose
출력 예시:
NAME STATE VERSION
* Ubuntu-22.04 Running 2
3단계: Docker Desktop 설치 (Windows)
3-1. Docker Desktop 다운로드
다운로드 링크:
시스템 요구사항:
- Windows 10 64-bit: Pro, Enterprise, Education (Build 19041 이상)
- Windows 11 64-bit: Home, Pro, Enterprise, Education
- WSL 2 활성화
- 하드웨어 가상화 지원
3-2. Docker Desktop 설치
- 다운로드한
Docker Desktop Installer.exe실행 - "Use WSL 2 instead of Hyper-V" 옵션 체크 (권장)
- "Install" 클릭
- 설치 완료 후 시스템 재부팅 (필요 시)
3-3. Docker Desktop 초기 설정
Docker Desktop 실행 후:
- "Accept" 클릭 (서비스 약관 동의)
- "Use recommended settings" 선택 (권장)
- "Finish" 클릭
3-4. WSL2 통합 활성화
Docker Desktop 설정:
- Docker Desktop 실행
- 설정(Settings) 클릭 (우측 상단 톱니바퀴)
- Resources → WSL Integration
- "Enable integration with my default WSL distro" 체크
- Ubuntu-22.04 토글 활성화
- "Apply & Restart" 클릭
설정 화면 예시:
WSL Integration
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
☑ Enable integration with my default WSL distro
Enable integration with additional distros:
☑ Ubuntu-22.04
[Apply & Restart]
3-5. Docker 설치 확인
PowerShell:
# Docker 버전 확인
docker --version
# Docker Compose 버전 확인
docker compose version
출력 예시:
Docker version 24.0.7, build afdd53b
Docker Compose version v2.23.3-desktop.2
WSL2 Ubuntu에서 확인:
# WSL 진입
wsl
# Docker 명령 확인
docker --version
4단계: Windows Terminal 설치 (선택사항)
Windows Terminal이란?
- Microsoft 공식 터미널 애플리케이션
- PowerShell, CMD, WSL 등 여러 셸을 탭으로 관리
- 가독성 및 생산성 향상
4-1. Microsoft Store에서 설치
- Microsoft Store 실행
- "Windows Terminal" 검색
- "설치" 클릭
또는 PowerShell (winget 사용):
# winget으로 설치
winget install Microsoft.WindowsTerminal
4-2. Windows Terminal에서 Ubuntu 열기
- Windows Terminal 실행
- 상단 탭 옆 "+" 드롭다운 클릭
- "Ubuntu-22.04" 선택
macOS 환경 세팅
1단계: Homebrew 설치 (선택사항)
Homebrew란?
- macOS용 패키지 관리자
- 다양한 개발 도구를 쉽게 설치/관리
터미널:
# Homebrew 설치
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
설치 확인:
# Homebrew 버전 확인
brew --version
출력 예시:
Homebrew 4.2.0
2단계: Docker Desktop 설치 (macOS)
2-1. Docker Desktop 다운로드
다운로드 링크:
- Apple Silicon (M1/M2/M3): https://desktop.docker.com/mac/main/arm64/Docker.dmg
- Intel Chip: https://desktop.docker.com/mac/main/amd64/Docker.dmg
또는 Homebrew 사용:
# Homebrew로 설치 (권장)
brew install --cask docker
2-2. Docker Desktop 설치
DMG 파일 다운로드한 경우:
- Docker.dmg 파일 실행
- Docker 아이콘을 Applications 폴더로 드래그
- Applications 폴더에서 Docker 실행
- "Open" 클릭 (보안 경고)
2-3. Docker Desktop 초기 설정
- "Accept" 클릭 (서비스 약관)
- "Use recommended settings" 선택
- macOS 시스템 비밀번호 입력 (권한 부여)
- "Finish" 클릭
2-4. Docker 설치 확인
터미널:
# Docker 버전 확인
docker --version
# Docker Compose 버전 확인
docker compose version
# Docker 정보 확인
docker info
출력 예시:
Docker version 24.0.7, build afdd53b
Docker Compose version v2.23.3-desktop.2
3단계: iTerm2 설치 (선택사항)
iTerm2란?
- macOS용 고급 터미널 에뮬레이터
- 기본 Terminal 앱보다 다양한 기능 제공
Homebrew 사용:
# iTerm2 설치
brew install --cask iterm2
Linux 환경 세팅 (Ubuntu/Debian 기준)
1단계: 시스템 업데이트
터미널:
# 패키지 목록 업데이트
sudo apt update
# 설치된 패키지 업그레이드
sudo apt upgrade -y
2단계: Docker Engine 설치
2-1. 필수 패키지 설치
# 필수 패키지 설치
sudo apt install -y \
ca-certificates \
curl \
gnupg \
lsb-release
2-2. Docker 공식 GPG 키 추가
용어 정리
- GPG 키 (GNU Privacy Guard Key): 소프트웨어 패키지의 진위를 검증하는 암호화 키. 패키지가 공식 배포자로부터 왔음을 보장
- apt: Ubuntu/Debian 계열의 패키지 관리 도구. 소프트웨어 설치, 업데이트, 삭제 담당
# GPG 키 디렉터리 생성
sudo install -m 0755 -d /etc/apt/keyrings
# Docker 공식 GPG 키 다운로드
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | \
sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
# 키 파일 권한 설정
sudo chmod a+r /etc/apt/keyrings/docker.gpg
2-3. Docker 저장소 추가
# Docker 저장소 추가
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] \
https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
2-4. Docker Engine 설치
용어 정리
- docker-ce: Docker Community Edition. Docker 엔진 본체
- docker-ce-cli: Docker 명령줄 인터페이스 (docker 명령어)
- containerd.io: 컨테이너 런타임. 실제 컨테이너 실행 담당
- docker-buildx-plugin: 멀티 아키텍처 이미지 빌드 플러그인
- docker-compose-plugin: Docker Compose V2 플러그인
# 패키지 목록 업데이트
sudo apt update
# Docker Engine, CLI, containerd 설치
sudo apt install -y \
docker-ce \
docker-ce-cli \
containerd.io \
docker-buildx-plugin \
docker-compose-plugin
2-5. Docker 서비스 시작
# Docker 서비스 시작
sudo systemctl start docker
# 부팅 시 자동 시작 설정
sudo systemctl enable docker
# Docker 서비스 상태 확인
sudo systemctl status docker
출력 예시:
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled)
Active: active (running) since Thu 2026-01-09 10:00:00 UTC
2-6. 사용자를 docker 그룹에 추가 (sudo 없이 사용)
용어 정리
- docker 그룹: Docker 데몬의 Unix 소켓에 접근 권한을 가진 사용자 그룹. 이 그룹에 추가되면 sudo 없이 docker 명령 실행 가능
- Unix 소켓: Docker 데몬과 클라이언트(docker 명령어)가 통신하는 방식. 기본적으로 root 사용자만 접근 가능
# 현재 사용자를 docker 그룹에 추가
# usermod: 사용자 계정 수정 명령
# -a: Append, 기존 그룹 유지하면서 추가
# -G: 보조 그룹 지정
# $USER: 현재 로그인한 사용자명 환경 변수
sudo usermod -aG docker $USER
# 변경사항 적용 (재로그인 또는 다음 명령 실행)
# newgrp: 현재 세션에서 그룹 변경 적용
newgrp docker
2-7. Docker 설치 확인
# Docker 버전 확인
docker --version
# Docker Compose 버전 확인
docker compose version
# Hello World 컨테이너 실행 테스트
docker run hello-world
출력 예시:
Hello from Docker!
This message shows that your installation appears to be working correctly.
설치 확인 및 테스트
모든 OS 공통 테스트
1. Docker 버전 확인
Windows PowerShell / macOS Terminal / Linux Terminal:
docker --version
예상 출력:
Docker version 24.0.7, build afdd53b
2. Docker 정보 확인
docker info
주요 확인 항목:
Server:
Containers: 0
Images: 0
Server Version: 24.0.7
Storage Driver: overlay2 (또는 overlayfs)
Operating System: Docker Desktop (Windows/Mac) 또는 Ubuntu (Linux)
3. Hello World 컨테이너 실행
docker run hello-world
성공 시 출력:
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
...
Status: Downloaded newer image for hello-world:latest
Hello from Docker!
This message shows that your installation appears to be working correctly.
4. Ubuntu 컨테이너 실행 테스트
# Ubuntu 컨테이너 실행 (대화형 모드)
docker run -it ubuntu:22.04 bash
# 컨테이너 내부에서 명령 실행
cat /etc/os-release
# 컨테이너 종료
exit
5. 이미지 목록 확인
docker images
예상 출력:
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu 22.04 3b418d7b466a 2 weeks ago 77.8MB
hello-world latest 9c7a54a9a43c 7 months ago 13.3kB
실습 디렉터리 생성
Windows (PowerShell)
# 실습 디렉터리 생성 (C 드라이브 권장)
New-Item -ItemType Directory -Path C:\docker-practice -Force
cd C:\docker-practice
# 디렉터리 확인
pwd
macOS / Linux (Bash)
# 실습 디렉터리 생성
mkdir -p ~/docker-practice
cd ~/docker-practice
# 디렉터리 확인
pwd
참고 자료
공식 문서:
- Docker 공식 문서: https://docs.docker.com/
- WSL2 공식 문서: https://learn.microsoft.com/en-us/windows/wsl/
- Docker Desktop for Windows: https://docs.docker.com/desktop/windows/install/
- Docker Desktop for Mac: https://docs.docker.com/desktop/mac/install/
- Docker Engine for Linux: https://docs.docker.com/engine/install/ubuntu/
커뮤니티:
- Docker 공식 포럼: https://forums.docker.com/
- Stack Overflow: https://stackoverflow.com/questions/tagged/docker